Trend Vision OneとAWSアカウントの接続にTerraformを使ってみた
こんにちは、シマです。
皆さんはTrend Vision Oneを使っていますか?Trend Vision OneをAWSアカウントに接続するためには、通常はTrend Vision Oneが用意しているCloudFormationテンプレートによるデプロイを行います。
Trend Vision Oneでは、CloudFormation以外にもTerraformでのAWSアカウントとの接続も可能で、会社やプロジェクトのスタンダードとしてCloudFormationではなく、Terraformを利用したいケースにも対応可能です。
今回はTerraformでTrend Vision OneをAWSアカウントに接続してみようと思います。
設定してみた
CloudShell上でのTerraform環境構築が完了している前提で、手順を記載します。
Trend Vision Oneコンソールへログインし、左ペインの「Cloud Security」から「Cloud Accounts」→「アカウントを追加」を選択します。
「Terraform」を選択し、「次へ」ボタンを押下します。
「アカウント名」にはVisionOne画面上で表示されるAWSアカウント名を入力し、「次へ」ボタンを押下します。
利用する機能を有効化して「次へ」ボタンを押下します。
※2024年12月現在はTerraformによるAWSアカウント連携では「主な機能」以外は有効にできません。
画面に表示されている流れに従い実施します。
AWS管理コンソールを開き、CloudShellの画面を開きます。VisionOneの画面に表示されていたcurlコマンドでファイルのダウンロードと解凍をします。
[cloudshell-user@ip-10-130-45-196 ~]$ curl https://vision-one-cloud-accounts-ap-northeast-1.s3.ap-northeast-1.amazonaws.com/templates/aws/cloud-account-management-terraform-package-XXXXX.zip --output cloud-account-management-terraform-package-XXXXX.zip
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 56618 100 56618 0 0 385k 0 --:--:-- --:--:-- --:--:-- 386k
[cloudshell-user@ip-10-130-45-196 ~]$ ll
total 56
-rw-r--r--. 1 cloudshell-user cloudshell-user 56618 Dec 4 07:03 cloud-account-management-terraform-package-XXXXX.zip
[cloudshell-user@ip-10-130-45-196 ~]$ unzip -o cloud-account-management-terraform-package-XXXXX.zip -d cloud-account-management-terraform-package
Archive: cloud-account-management-terraform-package-XXXXX.zip
creating: cloud-account-management-terraform-package/cam/
extracting: cloud-account-management-terraform-package/cam/aws_cloud_account.py
extracting: cloud-account-management-terraform-package/cam/main.tf
extracting: cloud-account-management-terraform-package/cam/trendmicro_visiononecloudaccount.tf
extracting: cloud-account-management-terraform-package/cam/trendmicro_visiononeoidcprovider.tf
extracting: cloud-account-management-terraform-package/cam/trendmicro_visiononepolicypart1.tf
extracting: cloud-account-management-terraform-package/cam/trendmicro_visiononepolicypart2.tf
extracting: cloud-account-management-terraform-package/cam/trendmicro_visiononepolicypart3.tf
extracting: cloud-account-management-terraform-package/cam/trendmicro_visiononerole.tf
extracting: cloud-account-management-terraform-package/cam/variables.tf
extracting: cloud-account-management-terraform-package/deploy.sh
extracting: cloud-account-management-terraform-package/functions.sh
extracting: cloud-account-management-terraform-package/main.tf
extracting: cloud-account-management-terraform-package/outputs.tf
extracting: cloud-account-management-terraform-package/variables.tf
解凍したディレクトリ内にあるスクリプトを実行します。
cd cloud-account-management-terraform-package
./deploy.sh
(中略)
Terraform apply completed successfully.
[INFO] Vision One resources have been successfully deployed. local storage usage: 164K
Cloud account activating - xxxx
Cloud account activation completed successfully.
スクリプト完了後に、Trend Vision Oneコンソール画面に戻り、「終了」ボタンを押下し、AWSアカウントが表示され、連携が完了します。
最後に
今回はTerraformでTrend Vision OneをAWSアカウントと接続してみました。現在の仕様では「主な機能」しか利用できないので、基本的にはCloudFormationを利用した方が良いですが、どうしてもという場合はこちらの方法も検討されてみてはいかがでしょうか。
本記事がどなたかのお役に立てれば幸いです。